﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using BLL;
using DataAccess;
using DevExpress.XtraEditors;

namespace QuanLyKhachSan
{
    public partial class frmLogin : XtraForm
    {
        private TaiKhoanManager manager = new TaiKhoanManager();
        private List<TaiKhoan> taikhoan = new List<TaiKhoan>();
        public Commons common = new Commons();

        public frmLogin()
        {
            InitializeComponent();
        }

        private void btnDangnhap_Click(object sender, EventArgs e)
        {
            try
            {
                if (txtTaikhoan.Text == "")
                    XtraMessageBox.Show("Chưa nhập tài khoản", "Cảnh báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                else if (txtMatkhau.Text == "")
                    XtraMessageBox.Show("Chưa nhâp mật khẩu", "Cảnh báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                else
                {
                    IEnumerable<TaiKhoan> inum = manager.LayDanhSach().Result.Where
                        (tk => tk.Username.Equals(txtTaikhoan.Text) &&
                               tk.Password.Equals(txtMatkhau.Text));
                    taikhoan = inum.ToList();
                    if (taikhoan.Count == 0){
                        XtraMessageBox.Show("Tài khoản hoặc mât khẩu không đúng, vui lòng đăng nhập lại", "Cảnh báo",
                            MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        txtMatkhau.Focus();
                    }
                    else if (taikhoan.ToList()[0].TrangThai.Equals("Bị khóa"))
                    {
                        XtraMessageBox.Show("Tài khoản bạn vừa đăng nhập hiện đang bị khóa, vui lòng mở khóa tài khoản để đăng nhập lại",
                            "Thông báo", MessageBoxButtons.OK);
                        txtMatkhau.Focus();
                    }
                    else
                    {
                        Commons.Current_ = taikhoan[0];
                        this.DialogResult = DialogResult.OK;
                    }
                }
            }
            catch
            {
            }
        }

        private void btnThoat_Click(object sender, EventArgs e)
        {
            Close();
        }

        private void linkQuenMK_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            var frm = new FormResetMatKhau();
            frm.ShowDialog();
            if (frm.IsInserted)
            {
                MessageBox.Show("Mật khẩu mới đã được gửi vào địa chỉ Email của bạn !", "Thông báo",
                    MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
    }
}
